

<!DOCTYPE html>
<html lang="zh-CN" data-default-color-scheme=auto>



<head><meta name="generator" content="Hexo 3.9.0">
  <meta charset="UTF-8">
  <link rel="apple-touch-icon" sizes="76x76" href="/img/favicon.ico">
  <link rel="icon" href="/img/favicon.ico">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, shrink-to-fit=no">
  <meta http-equiv="x-ua-compatible" content="ie=edge">
  
  <meta name="theme-color" content="#2f4154">
  <meta name="description" content="
当你进入了 Linux 的世界，在下载、安装 了某个 Linux 发行版，体验了 Linux 桌面并安装了一些你喜爱和需要的 软件 之后，应该去了解下 Linux 真正的魅力所在：命令行 。每一个命令其实就是一个程序，借助这些命令，我们可以办到非常多的事情。下面将会为大家介绍一下几个常用的命令。">
  <meta name="author" content="kinzun">
  <meta name="keywords" content>
  <meta name="description" content="当你进入了 Linux 的世界，在下载、安装 了某个 Linux 发行版，体验了 Linux 桌面并安装了一些你喜爱和需要的 软件 之后，应该去了解下 Linux 真正的魅力所在：命令行 。每一个命令其实就是一个程序，借助这些命令，我们可以办到非常多的事情。下面将会为大家介绍一下几个常用的命令。">
<meta name="keywords" content="shell">
<meta property="og:type" content="article">
<meta property="og:title" content="26-Linux-Common-Command">
<meta property="og:url" content="https://kinzun.github.io/2016/12/27/26-Linux-Common-Commands/index.html">
<meta property="og:site_name" content="kinzun">
<meta property="og:description" content="当你进入了 Linux 的世界，在下载、安装 了某个 Linux 发行版，体验了 Linux 桌面并安装了一些你喜爱和需要的 软件 之后，应该去了解下 Linux 真正的魅力所在：命令行 。每一个命令其实就是一个程序，借助这些命令，我们可以办到非常多的事情。下面将会为大家介绍一下几个常用的命令。">
<meta property="og:locale" content="zh-CN">
<meta property="og:image" content="https://kinzun.github.io/images/shell/26-Linux-Common-Commands.png">
<meta property="og:updated_time" content="2019-09-29T08:34:40.477Z">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="26-Linux-Common-Command">
<meta name="twitter:description" content="当你进入了 Linux 的世界，在下载、安装 了某个 Linux 发行版，体验了 Linux 桌面并安装了一些你喜爱和需要的 软件 之后，应该去了解下 Linux 真正的魅力所在：命令行 。每一个命令其实就是一个程序，借助这些命令，我们可以办到非常多的事情。下面将会为大家介绍一下几个常用的命令。">
<meta name="twitter:image" content="https://kinzun.github.io/images/shell/26-Linux-Common-Commands.png">
  
  <title>26-Linux-Common-Command - kinzun</title>

  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4/dist/css/bootstrap.min.css">


  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/github-markdown-css@4/github-markdown.min.css">
  <link rel="stylesheet" href="/lib/hint/hint.min.css">

  
    
    
      
      <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/highlight.js@10/styles/github-gist.min.css">
    
  

  
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/fancybox@3/dist/jquery.fancybox.min.css">
  


<!-- 主题依赖的图标库，不要自行修改 -->
<link rel="stylesheet" href="//at.alicdn.com/t/font_1749284_ba1fz6golrf.css">

<link rel="stylesheet" href="//at.alicdn.com/t/font_1736178_kmeydafke9r.css">

<link rel="stylesheet" href="/css/main.css">

<!-- 自定义样式保持在最底部 -->


  <script id="fluid-configs">
    var Fluid = window.Fluid || {};
    var CONFIG = {"hostname":"kinzun.github.io","root":"/","version":"1.8.12","typing":{"enable":true,"typeSpeed":70,"cursorChar":"_","loop":false},"anchorjs":{"enable":true,"element":"h1,h2,h3,h4,h5,h6","placement":"right","visible":"hover","icon":""},"progressbar":{"enable":true,"height_px":3,"color":"#29d","options":{"showSpinner":false,"trickleSpeed":100}},"copy_btn":true,"image_zoom":{"enable":true,"img_url_replace":["",""]},"toc":{"enable":true,"headingSelector":"h1,h2,h3,h4,h5,h6","collapseDepth":0},"lazyload":{"enable":true,"loading_img":"/img/loading.gif","onlypost":false,"offset_factor":2},"web_analytics":{"enable":false,"baidu":null,"google":null,"gtag":null,"tencent":{"sid":null,"cid":null},"woyaola":null,"cnzz":null,"leancloud":{"app_id":null,"app_key":null,"server_url":null,"path":"window.location.pathname"}},"search_path":"/local-search.xml"};
  </script>
  <script src="/js/utils.js"></script>
  <script src="/js/color-schema.js"></script>
</head>


<body>
  <header style="height: 70vh;">
    <nav id="navbar" class="navbar fixed-top  navbar-expand-lg navbar-dark scrolling-navbar">
  <div class="container">
    <a class="navbar-brand" href="/">
      <strong>kinzun</strong>
    </a>

    <button id="navbar-toggler-btn" class="navbar-toggler" type="button" data-toggle="collapse"
            data-target="#navbarSupportedContent"
            aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
      <div class="animated-icon"><span></span><span></span><span></span></div>
    </button>

    <!-- Collapsible content -->
    <div class="collapse navbar-collapse" id="navbarSupportedContent">
      <ul class="navbar-nav ml-auto text-center">
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/">
                <i class="iconfont icon-home-fill"></i>
                首页
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/archives/">
                <i class="iconfont icon-archive-fill"></i>
                归档
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/categories/">
                <i class="iconfont icon-category-fill"></i>
                分类
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/tags/">
                <i class="iconfont icon-tags-fill"></i>
                标签
              </a>
            </li>
          
        
          
          
          
          
            <li class="nav-item">
              <a class="nav-link" href="/about/">
                <i class="iconfont icon-user-fill"></i>
                关于
              </a>
            </li>
          
        
        
          <li class="nav-item" id="search-btn">
            <a class="nav-link" target="_self" href="javascript:;" data-toggle="modal" data-target="#modalSearch" aria-label="Search">
              &nbsp;<i class="iconfont icon-search"></i>&nbsp;
            </a>
          </li>
        
        
          <li class="nav-item" id="color-toggle-btn">
            <a class="nav-link" target="_self" href="javascript:;" aria-label="Color Toggle">&nbsp;<i
                class="iconfont icon-dark" id="color-toggle-icon"></i>&nbsp;</a>
          </li>
        
      </ul>
    </div>
  </div>
</nav>

    <div class="banner" id="banner" parallax=true
         style="background: url('/img/default.png') no-repeat center center;
           background-size: cover;">
      <div class="full-bg-img">
        <div class="mask flex-center" style="background-color: rgba(0, 0, 0, 0.3)">
          <div class="page-header text-center fade-in-up">
            <span class="h2" id="subtitle" title="26-Linux-Common-Command">
              
            </span>

            
              <div class="mt-3">
  
  
    <span class="post-meta">
      <i class="iconfont icon-date-fill" aria-hidden="true"></i>
      <time datetime="2016-12-27 14:40" pubdate>
        2016年12月27日 下午
      </time>
    </span>
  
</div>

<div class="mt-1">
  
    <span class="post-meta mr-2">
      <i class="iconfont icon-chart"></i>
      6.1k 字
    </span>
  

  
    <span class="post-meta mr-2">
      <i class="iconfont icon-clock-fill"></i>
      
      
      19 分钟
    </span>
  

  
  
</div>

            
          </div>

          
        </div>
      </div>
    </div>
  </header>

  <main>
    
      

<div class="container-fluid nopadding-x">
  <div class="row nomargin-x">
    <div class="d-none d-lg-block col-lg-2"></div>
    <div class="col-lg-8 nopadding-x-md">
      <div class="container nopadding-x-md" id="board-ctn">
        <div class="py-5" id="board">
          <article class="post-content mx-auto">
            <!-- SEO header -->
            <h1 style="display: none">26-Linux-Common-Command</h1>
            
            <div class="markdown-body">
              <p><img src="/images/shell/26-Linux-Common-Commands.png" srcset="/img/loading.gif" lazyload alt></p>
<p>当你进入了 Linux 的世界，在下载、安装 了某个 Linux 发行版，体验了 Linux 桌面并安装了一些你喜爱和需要的 软件 之后，应该去了解下 Linux 真正的魅力所在：<strong>命令行</strong> 。每一个命令其实就是一个程序，借助这些命令，我们可以办到非常多的事情。下面将会为大家介绍一下几个常用的命令。</p>
<a id="more"></a>
<ul>
<li>如何寻求帮助？<ul>
<li><a href="http://webres.wang/26-linux-common-commands/#man" target="_blank" rel="noopener">man</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#info" target="_blank" rel="noopener">info</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#command_help" target="_blank" rel="noopener">help</a></li>
</ul>
</li>
<li>如何简单操作？<ul>
<li><a href="http://webres.wang/26-linux-common-commands/#cursor" target="_blank" rel="noopener">光标</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#tab" target="_blank" rel="noopener">Tab 补全</a></li>
</ul>
</li>
<li>常用命令<ul>
<li><a href="http://webres.wang/26-linux-common-commands/#cd" target="_blank" rel="noopener">cd</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#ls" target="_blank" rel="noopener">ls</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#pwd" target="_blank" rel="noopener">pwd</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#mkdir" target="_blank" rel="noopener">mkdir</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#rm" target="_blank" rel="noopener">rm</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#cp" target="_blank" rel="noopener">cp</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#mv" target="_blank" rel="noopener">mv</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#cat" target="_blank" rel="noopener">cat</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#more" target="_blank" rel="noopener">more</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#less" target="_blank" rel="noopener">less</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#nano" target="_blank" rel="noopener">nano</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#reboot" target="_blank" rel="noopener">reboot</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#poweroff" target="_blank" rel="noopener">poweroff</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#ping" target="_blank" rel="noopener">ping</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#grep" target="_blank" rel="noopener">grep</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#mount" target="_blank" rel="noopener">mount</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#umount" target="_blank" rel="noopener">umount</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#tar" target="_blank" rel="noopener">tar</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#ln" target="_blank" rel="noopener">ln</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#chown" target="_blank" rel="noopener">chown</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#chmod" target="_blank" rel="noopener">chmod</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#useradd" target="_blank" rel="noopener">useradd</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#passwd" target="_blank" rel="noopener">passwd</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#whereis" target="_blank" rel="noopener">whereis</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#find" target="_blank" rel="noopener">find</a></li>
<li><a href="http://webres.wang/26-linux-common-commands/#wget" target="_blank" rel="noopener">wget</a></li>
</ul>
</li>
</ul>
<h3 id="如何寻求帮助？"><a href="#如何寻求帮助？" class="headerlink" title="如何寻求帮助？"></a>如何寻求帮助？</h3><p>在 Linux 下遇到问题，最重要的是要自己寻求帮助，下面是三种寻求帮助的方法。</p>
<h4 id="man"><a href="#man" class="headerlink" title="man"></a>man</h4><p><code>man</code> 是 Linux 的系统手册，即 <code>manual</code> 。因为大多数程序都会自带手册，所以可以通过 <code>man</code> 命令获取帮助。执行以后，在 <strong>man page</strong> 页面中按 <code>q</code> 退出。</p>
<p>获取 <code>ls</code> 的帮助</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> man ls</span><br></code></pre></div></td></tr></table></figure>
<p>查看有多少（针对不同方面的）同名的手册</p>
<figure class="highlight stata"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">$ <span class="hljs-keyword">man</span> -f <span class="hljs-keyword">ls</span><br><span class="hljs-keyword">ls</span> (1)               - <span class="hljs-keyword">list</span> directory contents<br><span class="hljs-keyword">ls</span> (1p)              - <span class="hljs-keyword">list</span> directory contents<br></code></pre></div></td></tr></table></figure>
<p>查看特定的手册</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> man 1p ls</span><br></code></pre></div></td></tr></table></figure>
<h4 id="info"><a href="#info" class="headerlink" title="info"></a>info</h4><p>与 <code>man</code> 不同的是，可以像浏览网页一样在各个节点中跳转。</p>
<p>从文档首页开始浏览</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> info</span><br></code></pre></div></td></tr></table></figure>
<p>获取特定程序的帮助</p>
<figure class="highlight fortran"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">$ info <span class="hljs-function"><span class="hljs-keyword">program</span></span><br></code></pre></div></td></tr></table></figure>
<h4 id="help"><a href="#help" class="headerlink" title="help"></a>help</h4><p>除了上面的两种方法外，还有一种简单使用的方法，那就是 <code>--help</code> 参数，一般程序都会有这个参数，会输出最简单有用的介绍。</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> man --<span class="hljs-built_in">help</span>       <span class="hljs-comment">### 获取 man 的帮助</span></span><br><span class="hljs-meta">$</span><span class="bash"> info --<span class="hljs-built_in">help</span>      <span class="hljs-comment">### 获取 info 的帮助</span></span><br></code></pre></div></td></tr></table></figure>
<h2 id="如何简单操作？"><a href="#如何简单操作？" class="headerlink" title="如何简单操作？"></a>如何简单操作？</h2><p>在 <code>Terminal(终端)</code> 中，有许多操作技巧，这里就介绍几个简单的。</p>
<h4 id="光标"><a href="#光标" class="headerlink" title="光标"></a>光标</h4><figure class="highlight haml"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">-<span class="ruby"> up(方向键上)      可以调出输入历史执行记录，快速执行命令<br></span>-<span class="ruby"> down(方向键下)    配合 up 选择历史执行记录<br></span>-<span class="ruby"> Home             移动光标到本行开头<br></span>-<span class="ruby"> End              移动光标到本行结尾<br></span>-<span class="ruby"> PgUp             向上翻页<br></span>-<span class="ruby"> PaDN             向下翻页<br></span>-<span class="ruby"> ctrl + c         终止当前程序</span><br></code></pre></div></td></tr></table></figure>
<h4 id="Tab-补全"><a href="#Tab-补全" class="headerlink" title="Tab 补全"></a>Tab 补全</h4><p><code>Tab</code> 补全是非常有用的一个功能，可以用来自动补全命令或文件名，省时准确。</p>
<ul>
<li>未输入状态下连按<strong>两次</strong> <code>Tab</code> 列出所有可用命令</li>
<li>已输入部分命令名或文件名，按 <code>Tab</code> 进行自动补全，多用你就肯定会喜欢的了。</li>
</ul>
<h2 id="常用命令"><a href="#常用命令" class="headerlink" title="常用命令"></a>常用命令</h2><h4 id="cd"><a href="#cd" class="headerlink" title="cd"></a>cd</h4><p><code>cd</code> 是打开某个路径的命令，也就是打开某个文件夹，并跳转到该处。</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> <span class="hljs-built_in">cd</span> path      <span class="hljs-comment">### path 为你要打开的路径。</span></span><br></code></pre></div></td></tr></table></figure>
<p>其中 path 有绝对路径和相对路径之分，绝对路径强调从 <code>/</code> 起，一直到所在路径。相对路径则，相对于当前路径来说，假设当前家目录有<code>etc</code> 文件夹（绝对路径应为 <code>/home/username/etc</code>），如果直接 <code>cd etc</code> 则进入此文件夹，但若是 <code>cd /etc/</code> 则是进入系统 <code>etc</code> ，多琢磨一下就可以理解了。另外在 Linux 中， <code>.</code> 代表当前目录， <code>..</code> 代表上级目录，因此返回上级目录可以 <code>cd ..</code> 。</p>
<h4 id="ls"><a href="#ls" class="headerlink" title="ls"></a>ls</h4><p><code>ls</code> 即 <strong>list</strong> ，列出文件。</p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">$ ls       ### 仅列出当前目录可见文件<br>$ ls -l    ### 列出当前目录可见文件详细信息<br>$ ls -hl   ### 列出详细信息并以可读大小显示文件大小<br>$ ls -al   ### 列出所有文件（包括隐藏）的详细信息<br></code></pre></div></td></tr></table></figure>
<h4 id="注意：-Linux-中-以-开头的文件或文件夹均为隐藏文件或隐藏文件夹。"><a href="#注意：-Linux-中-以-开头的文件或文件夹均为隐藏文件或隐藏文件夹。" class="headerlink" title="注意： Linux 中 以 . 开头的文件或文件夹均为隐藏文件或隐藏文件夹。"></a><strong>注意</strong>： Linux 中 以 <code>.</code> 开头的文件或文件夹均为隐藏文件或隐藏文件夹。</h4><h4 id="pwd"><a href="#pwd" class="headerlink" title="pwd"></a>pwd</h4><p><code>pwd</code> 用于返回当前工作目录的名字，为绝对路径名。</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> <span class="hljs-built_in">pwd</span></span><br>/home<br></code></pre></div></td></tr></table></figure>
<h4 id="mkdir"><a href="#mkdir" class="headerlink" title="mkdir"></a>mkdir</h4><p><code>mkdir</code> 用于新建文件夹。</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> mkdir folder</span><br><span class="hljs-meta">$</span><span class="bash"> mkdir -p folder/subfolder    <span class="hljs-comment">### -p 参数为当父目录存在时忽略，若不存在则建立，用此参数可建立多级文件夹</span></span><br></code></pre></div></td></tr></table></figure>
<h4 id="rm"><a href="#rm" class="headerlink" title="rm"></a>rm</h4><p><code>rm</code> 即 <strong>remove</strong> ，删除文件。</p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">$ rm filename    ### 删除 filename<br>$ rm -i filename   ### 删除 filename 前提示，若多个文件则每次提示<br>$ rm -rf folder/subfolder/  ### 递归删除 subfolder 下所有文件及文件夹，包括 subfolder 自身<br>$ rm -d folder     ###  删除空文件夹<br></code></pre></div></td></tr></table></figure>
<h4 id="cp"><a href="#cp" class="headerlink" title="cp"></a>cp</h4><p><code>cp</code> 即 <strong>copy</strong> ，复制文件。</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> cp <span class="hljs-built_in">source</span> dest            <span class="hljs-comment">### 将 source 复制到 dest</span></span><br><span class="hljs-meta">$</span><span class="bash"> cp folder/*  dest         <span class="hljs-comment">### 将 folder 下所有文件(不含子文件夹中的文件)复制到 dest</span></span><br><span class="hljs-meta">$</span><span class="bash"> cp -r folder  dest        <span class="hljs-comment">### 将 folder 下所有文件（包含子文件夹中的所有文件）复制到 dest</span></span><br></code></pre></div></td></tr></table></figure>
<h4 id="mv"><a href="#mv" class="headerlink" title="mv"></a>mv</h4><p><code>mv</code> 即 <strong>move</strong> ，移动文件。</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> mv <span class="hljs-built_in">source</span>  folder        <span class="hljs-comment">### 将 source 移动到 folder 下，完成后则为  folder/source</span></span><br><span class="hljs-meta">$</span><span class="bash"> mv -i <span class="hljs-built_in">source</span> folder      <span class="hljs-comment">### 在移动时，若文件已存在则提示 **是否覆盖** </span></span><br><span class="hljs-meta">$</span><span class="bash"> mv <span class="hljs-built_in">source</span> dest           <span class="hljs-comment">### 在 dest 不为目录的前提下，重命名 source 为 dest</span></span><br></code></pre></div></td></tr></table></figure>
<h4 id="cat"><a href="#cat" class="headerlink" title="cat"></a>cat</h4><p><code>cat</code> 用于输出文件内容到 Terminal 。</p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">$ cat /etc/locale.gen     ### 输出 locale.gen 的内容 <br>$ cat -n /etc/locale.gen  ### 输出 locale.gen 的内容并显示行号<br></code></pre></div></td></tr></table></figure>
<h4 id="more"><a href="#more" class="headerlink" title="more"></a>more</h4><p><code>more</code> 与 <code>cat</code> 相似，都可以查看文件内容，所不同的是，当一个文档太长时， <code>cat</code> 只能展示最后布满屏幕的内容，前面的内容是不可见的。这时候可用 <code>more</code> 逐行显示内容。</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> more /etc/locale.gen</span><br><span class="hljs-meta">$</span><span class="bash"> more +100 /etc/locale.gen       <span class="hljs-comment">### 从 100 行开始显示</span></span><br></code></pre></div></td></tr></table></figure>
<h4 id="less"><a href="#less" class="headerlink" title="less"></a>less</h4><p><code>less</code> 与 <code>more</code> 相似，不过 <code>less</code> 支持上下滚动查看内容，而 <code>more</code> 只支持逐行显示。</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> less /etc/locale.gen</span><br><span class="hljs-meta">$</span><span class="bash"> less +100 /etc/locale.gen</span><br></code></pre></div></td></tr></table></figure>
<h4 id="nano"><a href="#nano" class="headerlink" title="nano"></a>nano</h4><p><code>nano</code> 是一个简单实用的文本编辑器，入门简单。</p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">$ nano  filename       ### 编辑 filename 文件，若文件不存在，则新打开一个文件，若退出时保存，则创建该文件<br></code></pre></div></td></tr></table></figure>
<p>编辑完后，<code>ctrl + X</code> 提示是否保存，按 <code>y</code> 确定保存即可。</p>
<h4 id="注意：在使用过程中可用-ctrl-G-获取帮助。"><a href="#注意：在使用过程中可用-ctrl-G-获取帮助。" class="headerlink" title="注意：在使用过程中可用 ctrl + G 获取帮助。"></a><strong>注意</strong>：在使用过程中可用 <code>ctrl + G</code> 获取帮助。</h4><h4 id="reboot"><a href="#reboot" class="headerlink" title="reboot"></a>reboot</h4><p><code>reboot</code> 为重启命令。</p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"># reboot         ### <span class="hljs-string">'$'</span> 和 <span class="hljs-string">'#'</span> 的区别在于 <span class="hljs-string">'$'</span> 普通用户即可执行，而 <span class="hljs-string">'#'</span> 为 root 用户才可执行，或普通用户使用 <span class="hljs-string">'sudo'</span><br></code></pre></div></td></tr></table></figure>
<h4 id="poweroff"><a href="#poweroff" class="headerlink" title="poweroff"></a>poweroff</h4><p><code>poweroff</code> 为关机命令。</p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"># poweroff  ### 马上关机<br></code></pre></div></td></tr></table></figure>
<h4 id="ping"><a href="#ping" class="headerlink" title="ping"></a>ping</h4><p><code>ping</code> 主要用于测试网络连通，通过对目标机器发送数据包来测试两台主机是否连通，及延时情况。</p>
<figure class="highlight routeros"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">$<span class="hljs-built_in"> ping </span>locez.com    ### 通过域名 ping，若<span class="hljs-built_in"> DNS </span>未设置好，可能无法<span class="hljs-built_in"> ping </span>通<br>$<span class="hljs-built_in"> ping </span>linux.cn<span class="hljs-built_in"><br>PING </span>linux.cn (211.157.2.94) 56(84) bytes of data.<br>64 bytes <span class="hljs-keyword">from</span> 211.157.2.94.static.in-addr.arpa (211.157.2.94): <span class="hljs-attribute">icmp_seq</span>=1 <span class="hljs-attribute">ttl</span>=53 <span class="hljs-attribute">time</span>=41.5 ms<br>64 bytes <span class="hljs-keyword">from</span> 211.157.2.94.static.in-addr.arpa (211.157.2.94): <span class="hljs-attribute">icmp_seq</span>=2 <span class="hljs-attribute">ttl</span>=53 <span class="hljs-attribute">time</span>=40.4 ms<br>64 bytes <span class="hljs-keyword">from</span> 211.157.2.94.static.in-addr.arpa (211.157.2.94): <span class="hljs-attribute">icmp_seq</span>=3 <span class="hljs-attribute">ttl</span>=53 <span class="hljs-attribute">time</span>=41.9 ms<br>^C<br>--- linux.cn<span class="hljs-built_in"> ping </span>statistics ---<br>3 packets transmitted, 3 received, 0% packet loss, time 2002ms<br>rtt min/avg/max/mdev = 40.406/41.287/41.931/0.644 ms<br><br>$<span class="hljs-built_in"> ping </span>211.157.2.94   ### 通过<span class="hljs-built_in"> IP </span>地址<span class="hljs-built_in"> ping </span>，若无法<span class="hljs-built_in"> ping </span>通可能是网络连接出现问题<br></code></pre></div></td></tr></table></figure>
<h4 id="grep"><a href="#grep" class="headerlink" title="grep"></a>grep</h4><p><code>grep</code> 主要用于返回匹配的项目，支持正则表达式。</p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">$ grep PATTERN filename      ### 返回所有含有 PATTERN 的行<br>$ grep zh_CN /etc/locale.gen ### 返回所有含 zh_CN 的行<br></code></pre></div></td></tr></table></figure>
<h4 id="mount"><a href="#mount" class="headerlink" title="mount"></a>mount</h4><p><code>mount</code> 用于挂载一个文件系统，需要 <code>root</code> 用户执行。一个磁盘可分为若干个分区，在分区上面可以创建文件系统，而挂载点则是提供一个访问的入口，将一个分区的文件系统挂载到某个目录中，称这个目录为挂载点，并且可以通过这个挂载点访问该文件系统中的内容。</p>
<p>例如一块硬盘在 Linux 中表示为 <code>/dev/sda</code> 那么它上面的分区应该表示为 <code>/dev/sda1</code>、<code>/dev/sda2</code> 。</p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"># mount                       ### 输出系统目前的挂载信息<br># mount /dev/sda1 /mnt        ### 将 sda1 挂载到 /mnt 中<br># cd /mnt                     ### 直接通过 /mnt 访问内容<br># mount -o remount,rw  /mnt   ### 重新挂载 sda1 到 /mnt 并设置为 可读写 <br># mount -a                    ### 挂载 fstab 文件配置好的文件系统<br></code></pre></div></td></tr></table></figure>
<h4 id="umount"><a href="#umount" class="headerlink" title="umount"></a>umount</h4><p><code>umount</code> 与 <code>moung</code> 相反，是卸载一个挂载点，即取消该入口。</p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"># umount /mnt                 ### 卸载 /mnt 这个挂载点的文件系统<br># umount -a                   ### 卸载所有已挂载的文件系统<br></code></pre></div></td></tr></table></figure>
<h4 id="tar"><a href="#tar" class="headerlink" title="tar"></a>tar</h4><p><code>tar</code> 主要用于创建归档文件，和解压归档文件，其本身是没有压缩功能的，但可以调用 <code>gzip</code> 、 <code>bzip2</code> 进行压缩处理。<br>参数解释：</p>
<ul>
<li><code>-c</code> 创建归档</li>
<li><code>-x</code> 解压归档</li>
<li><code>-v</code> 显示处理过程</li>
<li><code>-f</code> 目标文件，其后必须紧跟 目标文件</li>
<li><code>-j</code> 调用 <code>bzip2</code> 进行解压缩</li>
<li><code>-z</code> 调用 <code>gzip</code> 进行解压缩</li>
<li><code>-t</code> 列出归档中的文件</li>
</ul>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">$ tar -cvf filename.tar .       ### 将当前目录所有文件归档，但不压缩，注意后面有个 ’.‘ ，不可省略，代表当前目录的意思 <br>$ tar -xvf filename.tar         ### 解压 filename.tar 到当前文件夹<br>$ tar -cvjf filename.tar.bz2 .  ### 使用 bzip2 压缩<br>$ tar -xvjf  filename.tar.bz2   ### 解压 filename.tar.bz2 到当前文件夹<br>$ tar -cvzf filename.tar.gz     ### 使用 gzip  压缩<br>$ tar -xvzf filename.tar.gz     ### 解压 filename.tar.gz 到当前文件夹<br>$ tar -tf   filename            ### 只查看 filename 归档中的文件，不解压<br></code></pre></div></td></tr></table></figure>
<h4 id="ln"><a href="#ln" class="headerlink" title="ln"></a>ln</h4><p><code>ln</code> 主要用于在两个文件中创建链接，链接又分为 <code>Hard Links</code> (硬链接)和 <code>Symbolic Links</code> (符号链接或软链接)，其中默认为创建<strong>硬链接</strong>，使用 <code>-s</code> 参数指定创建软链接。</p>
<ul>
<li>硬链接主要是增加一个文件的链接数，只要该文件的链接数不为 <code>0</code> ，该文件就不会被物理删除，所以删除一个具有多个硬链接数的文件，必须删除所有它的硬链接才可删除。</li>
<li>软链接简单来说是为文件创建了一个类似快捷方式的东西，通过该链接可以访问文件，修改文件，但不会增加该文件的链接数，删除一个软链接并不会删除源文件，即使源文件被删除，软链接也存在，当重新创建一个同名的源文件，该软链接则指向新创建的文件。</li>
<li>硬链接只可链接两个文件，不可链接目录，而软链接可链接目录，所以软链接是非常灵活的。</li>
</ul>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> ln <span class="hljs-built_in">source</span> dest       <span class="hljs-comment">### 为 source 创建一个名为 dest 的硬链接</span></span><br><span class="hljs-meta">$</span><span class="bash"> ln -s <span class="hljs-built_in">source</span> dest    <span class="hljs-comment">### 为 source 创建一个名为 dest 的软链接</span></span><br></code></pre></div></td></tr></table></figure>
<h4 id="chown"><a href="#chown" class="headerlink" title="chown"></a>chown</h4><p><code>chown</code> 用于改变一个文件的所有者及所在的组。</p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"># chown user filename        ### 改变 filename 的所有者为 user<br># chown user:group filename  ### 改变 filename 的所有者为 user，组为 group<br># chown -R root folder      ### 改变 folder 文件夹及其子文件的所有者为 root<br></code></pre></div></td></tr></table></figure>
<h4 id="chmod"><a href="#chmod" class="headerlink" title="chmod"></a>chmod</h4><p><code>chmod</code> 永远更改一个文件的权限，主要有 <strong>读取</strong> 、 <strong>写入</strong> 、 <strong>执行</strong> ，三种权限，其中 <strong>所有者</strong> 、 <strong>用户组</strong> 、 <strong>其他</strong> 各占三个，因此 <code>ls -l</code> 可以看到如下的信息</p>
<figure class="highlight routeros"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">-rwxr--r-- 1 locez<span class="hljs-built_in"> users </span>  154 Aug 30 18:09 filename<br></code></pre></div></td></tr></table></figure>
<p>其中 <code>r=read</code> ， <code>w=write</code> ， <code>x=execute</code></p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"># chmod +x filename        ### 为 user ，group ，others 添加执行权限<br># chmod -x filename        ### 取消 user ， group ，others 的执行权限<br># chmod +w filename        ### 为 user 添加写入权限<br># chmod ugo=rwx filename   ### 设置 user ，group ，others 具有 读取、写入、执行权限<br># chmod ug=rw filename     ### 设置 user ，group 添加 读取、写入权限<br># chmod ugo=--- filename   ### 取消所有权限<br></code></pre></div></td></tr></table></figure>
<h4 id="useradd"><a href="#useradd" class="headerlink" title="useradd"></a>useradd</h4><p><code>useradd</code> 用于添加一个普通用户。</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">#</span><span class="bash"> useradd -m -g users -G audio -s /usr/bin/bash newuser     </span><br><span class="hljs-meta">#</span><span class="bash"><span class="hljs-comment">## -m 创建 home 目录， -g 所属的主组， -G 指定该用户在哪些附加组， -s 设定默认的 shell ，newuser 为新的用户名</span></span><br></code></pre></div></td></tr></table></figure>
<h4 id="passwd"><a href="#passwd" class="headerlink" title="passwd"></a>passwd</h4><p><code>passwd</code> 用于改变用户登录密码。</p>
<figure class="highlight clean"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">$ passwd                 ### 不带参数更改当前用户密码<br># passwd newuser       ### 更改上述新建的 newuser 的用户密码<br></code></pre></div></td></tr></table></figure>
<h4 id="whereis"><a href="#whereis" class="headerlink" title="whereis"></a>whereis</h4><p><code>whereis</code> 用于查找文件、手册等。</p>
<figure class="highlight armasm"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined">$ whereis <span class="hljs-keyword">bash </span><br><span class="hljs-keyword">bash: </span>/usr/<span class="hljs-keyword">bin/bash </span>/etc/<span class="hljs-keyword">bash.bashrc </span>/etc/<span class="hljs-keyword">bash.bash_logout </span>/usr/share/man/man1/<span class="hljs-keyword">bash.1.gz </span>/usr/share/<span class="hljs-meta">info</span>/<span class="hljs-keyword">bash.info.gz<br></span>$ whereis -<span class="hljs-keyword">b </span><span class="hljs-keyword">bash </span>      ### 仅查找 <span class="hljs-keyword">binary<br></span><span class="hljs-keyword">bash: </span>/usr/<span class="hljs-keyword">bin/bash </span>/etc/<span class="hljs-keyword">bash.bashrc </span>/etc/<span class="hljs-keyword">bash.bash_logout<br></span>$ whereis -m <span class="hljs-keyword">bash </span>      ### 仅查找 manual<br><span class="hljs-keyword">bash: </span>/usr/share/man/man1/<span class="hljs-keyword">bash.1.gz </span>/usr/share/<span class="hljs-meta">info</span>/<span class="hljs-keyword">bash.info.gz</span><br></code></pre></div></td></tr></table></figure>
<h4 id="find"><a href="#find" class="headerlink" title="find"></a>find</h4><p><code>find</code> 也用于查找文件，但更为强大，支持正则，并且可将查找结果传递到其他命令。</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> find . -name PATTERN    <span class="hljs-comment">### 从当前目录查找符合 PATTERN 的文件</span></span><br><span class="hljs-meta">$</span><span class="bash"> find /home -name PATTERN -<span class="hljs-built_in">exec</span> ls -l &#123;&#125; \;  <span class="hljs-comment">### 从 /home 文件查找所有符合 PATTERN 的文件，并交由 ls 输出详细信息</span></span><br></code></pre></div></td></tr></table></figure>
<blockquote>
<p>推荐阅读：</p>
<ul>
<li>《<a href="http://9iphp.com/linux/126.html" target="_blank" rel="noopener">妈咪，我找到了! — 15个实用的Linux find命令示例</a>》</li>
<li>《<a href="http://9iphp.com/linux/136.html" target="_blank" rel="noopener">爹地，我找到了!— 15个极好的Linux find命令示例</a>》</li>
</ul>
</blockquote>
<h4 id="wget"><a href="#wget" class="headerlink" title="wget"></a>wget</h4><p><code>wget</code> 是一个下载工具，简单强大。</p>
<figure class="highlight shell"><table><tr><td class="gutter hljs"><div class="hljs code-wrapper"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></div></td><td class="code"><div class="hljs code-wrapper"><pre><code class="hljs undefined"><span class="hljs-meta">$</span><span class="bash"> wget -O newname.md https://github.com/LCTT/TranslateProject/blob/master/README.md     <span class="hljs-comment">###下载 README 文件并重命名为 newname.md</span></span><br><span class="hljs-meta">$</span><span class="bash"> wget -c url     <span class="hljs-comment">### 下载 url 并开启断点续传</span></span><br></code></pre></div></td></tr></table></figure>
<p>恭喜你，你已经学习了完了26 个基础的 Linux 命令。虽然这里只是一些最基础的命令，但是熟练使用这些命令就踏出了你从一位 Linux 新手成为 Linux 玩家的第一步！</p>

            </div>
            <hr>
            <div>
              <div class="post-metas mb-3">
                
                
                  <div class="post-meta">
                    <i class="iconfont icon-tags"></i>
                    
                      <a class="hover-with-bg" href="/tags/shell/">shell</a>
                    
                  </div>
                
              </div>
              
                <p class="note note-warning">
                  
                    本博客所有文章除特别声明外，均采用 <a href="https://creativecommons.org/licenses/by-sa/4.0/deed.zh" rel="nofollow noopener">CC BY-SA 4.0 协议</a> ，转载请注明出处！
                  
                </p>
              
              
                <div class="post-prevnext">
                  <article class="post-prev col-6">
                    
                    
                      <a href="/2017/03/07/NetworkManager-command-line-tool/">
                        <i class="iconfont icon-arrowleft"></i>
                        <span class="hidden-mobile">NetworkManager command line tool</span>
                        <span class="visible-mobile">上一篇</span>
                      </a>
                    
                  </article>
                  <article class="post-next col-6">
                    
                    
                      <a href="/2016/12/13/nmap-and-tcpdump/">
                        <span class="hidden-mobile">Nmap和TCPdump</span>
                        <span class="visible-mobile">下一篇</span>
                        <i class="iconfont icon-arrowright"></i>
                      </a>
                    
                  </article>
                </div>
              
            </div>

            
              <!-- Comments -->
              <article class="comments" id="comments" lazyload>
                
                  
                
                

              </article>
            
          </article>
        </div>
      </div>
    </div>
    
      <div class="d-none d-lg-block col-lg-2 toc-container" id="toc-ctn">
        <div id="toc">
  <p class="toc-header"><i class="iconfont icon-list"></i>&nbsp;目录</p>
  <div class="toc-body" id="toc-body"></div>
</div>

      </div>
    
  </div>
</div>

<!-- Custom -->


    

    
      <a id="scroll-top-button" aria-label="TOP" href="#" role="button">
        <i class="iconfont icon-arrowup" aria-hidden="true"></i>
      </a>
    

    
      <div class="modal fade" id="modalSearch" tabindex="-1" role="dialog" aria-labelledby="ModalLabel"
     aria-hidden="true">
  <div class="modal-dialog modal-dialog-scrollable modal-lg" role="document">
    <div class="modal-content">
      <div class="modal-header text-center">
        <h4 class="modal-title w-100 font-weight-bold">搜索</h4>
        <button type="button" id="local-search-close" class="close" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body mx-3">
        <div class="md-form mb-5">
          <input type="text" id="local-search-input" class="form-control validate">
          <label data-error="x" data-success="v"
                 for="local-search-input">关键词</label>
        </div>
        <div class="list-group" id="local-search-result"></div>
      </div>
    </div>
  </div>
</div>
    

    
  </main>

  <footer class="text-center mt-5 py-3">
  <div class="footer-content">
     <a href="https://hexo.io" target="_blank" rel="nofollow noopener"><span>Hexo</span></a> <i class="iconfont icon-love"></i> <a href="https://github.com/fluid-dev/hexo-theme-fluid" target="_blank" rel="nofollow noopener"><span>Fluid</span></a> 
  </div>
  

  

  
</footer>


  <!-- SCRIPTS -->
  
  <script  src="https://cdn.jsdelivr.net/npm/nprogress@0/nprogress.min.js" ></script>
  <link  rel="stylesheet" href="https://cdn.jsdelivr.net/npm/nprogress@0/nprogress.min.css" />

  <script>
    NProgress.configure({"showSpinner":false,"trickleSpeed":100})
    NProgress.start()
    window.addEventListener('load', function() {
      NProgress.done();
    })
  </script>


<script  src="https://cdn.jsdelivr.net/npm/jquery@3/dist/jquery.min.js" ></script>
<script  src="https://cdn.jsdelivr.net/npm/bootstrap@4/dist/js/bootstrap.min.js" ></script>
<script  src="/js/events.js" ></script>
<script  src="/js/plugins.js" ></script>

<!-- Plugins -->


  <script  src="/js/local-search.js" ></script>



  
    <script  src="/js/img-lazyload.js" ></script>
  



  



  
    <script  src="https://cdn.jsdelivr.net/npm/tocbot@4/dist/tocbot.min.js" ></script>
  
  
    <script  src="https://cdn.jsdelivr.net/npm/@fancyapps/fancybox@3/dist/jquery.fancybox.min.js" ></script>
  
  
    <script  src="https://cdn.jsdelivr.net/npm/anchor-js@4/anchor.min.js" ></script>
  
  
    <script defer src="https://cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js" ></script>
  






  <script  src="https://cdn.jsdelivr.net/npm/typed.js@2/lib/typed.min.js" ></script>
  <script>
    (function (window, document) {
      var typing = Fluid.plugins.typing;
      var title = document.getElementById('subtitle').title;
      
      typing(title)
      
    })(window, document);
  </script>















<!-- 主题的启动项 保持在最底部 -->
<script  src="/js/boot.js" ></script>


</body>
</html>
